The present invention relates to image coding systems and, more particularly, to image coding systems for compressing and coding the digital image signal obtained by digital cameras or like electronic cameras.
Recently, digital cameras or like electronic cameras (hereinafter referred to as digital cameras) are popular, which uses a photoelectric transducer for photoelectrically converting images optically focused by an optical system of a photographing lens system or the like to an electric signal as image signal (or image data) which is A/D converted to a digital image signal for recording (or storage).
When the image data is digitized, usually an enormous amount of data is produced compared to character data or the like. To record (or store) and transmit such great amount of digital image data at an adequate processing rate, a large scale circuit requiring high cost of manufacture is necessary. Accordingly, data compression techniques for compressing the image data to be stored or transmitted, thus reducing the data size, find extensive applications particularly to digital cameras and like small-size devices dealing with the image data, which importance is attached to the portability size and cost reduction is required for.
In the usual digital camera, normally the image data to be stored or transmitted is compressed and coded in the following process. Image which is focused optically by an optical system is photoelectrically converted by a photoelectric transducer or like device to generate image data, which is in turn A/D converted to digital image data. This digital data is divided into a plurality of predetermined unit blocks each comprising, for instance, 8xc3x978 pixels, and orthogonally converted for each block by means of DCT (discrete cosine transform) involving DCT computation. Further, DCT coefficients which are obtained as a result of the orthogonal conversion are quantized, and the quantized DCT coefficients are subjected to variable run length coding such as Huffman coding.
In this case, commonly called two-pass coding volume control is executed for the coding. Specifically, in a first coding process quantizing coefficients are obtained such that the image data amount is a target code volume and in a second coding process the quantization process is executed on the basis of thus obtained quantizing coefficients.
However, in the above coding under the two-pass code volume control, two similar coding processes are executed on the image data obtained through the optical system, and the overall process thus requires long processing time.
Besides, so long as the image data obtained through the optical system and photoelectrically and A/D converted is color space converted and pixel number converted in each of the two coding processes, a great amount of data is involved, reducing processing speed.
The present invention was made in view of the above problems, and it has an object of providing an image coding system capable of fast coding process and storing and transmitting of the coded data with less deterioration even when the coding is executed under code volume control of a plurality of passes.
According to a first aspect of the present invention, there is provided an image coding system comprising an image pick-up unit for photoelectrically and then digital-to-analog converting image focused by an optical system, thereby providing digital image data, a color space/pixel number converting unit for converting the digital image data provided from the image pick-up unit to color space and pixel number converted digital image data to be stored and/or transmitted, an orthogonal converting unit for orthogonally converting the digital image data, a quantizing unit for quantizing orthogonal conversion coefficients provided from the orthogonal converting unit, a variable run length coding unit for variable run length coding the quantized orthogonal conversion coefficients from the quantizing unit, and a storing/transmitting unit for storing and/or transmitting the variable run length coded data from the variable run length coding unit, wherein:
the image coding system further comprises a code volume control unit for providing, in a first coding process, image data obtained from the color space/pixel number converting unit as a result of omission of at least the color space conversion, among the color space and pixel number conversions, to the orthogonal converting unit, and computing quantizing coefficient data adequate for obtaining a target code volume from the code volume of coded data provided from the orthogonal converting unit and the target code volume; and
in a second coding process executed from an instant of time after the first coding process, the color space/pixel number converting unit executes both of the color space and pixel number conversions and provides resultant image data to the orthogonal converting unit and stores and/or transmitting the coded data provided as a result from the orthogonal converting unit.
Thus, in the image coding system according to the first aspect of the present invention, in the first coding process at least the color space conversion among the color space and pixel number conversions to be executed in the color space/pixel number converting unit is omitted for increasing the coding process speed, while in the second coding process both of the color space and pixel number conversions are not omitted but executed in the color space/pixel number converting unit, thus permitting more efficient storage and/or transmission of coded data with less deterioration.
According to a second aspect of the present invention, there is provided an image coding system comprising an orthogonal converting unit for orthogonally converting digital image data, a quantizing unit for quantizing orthogonal conversion coefficients provided from the orthogonal converting unit, a variable run length coding unit for variable run length coding the quantized orthogonal conversion coefficients from the quantizing unit, and a storing/transmitting unit for storing and/or transmitting the variable run length coded data from the variable run length coding unit, wherein:
the quantizing unit quantizes the orthogonal conversion coefficients on the basis of quantizing coefficient data obtained by multiplying a basic quantization table by a scale factor;
the image coding system further comprises a code volume control unit for determining, in a first coding process, a scale factor used in a second coding process executed from an instant of time after the first coding process on the basis of the ratio between the actual code volume of coded data, obtained by using a predetermined initial scale factor, and a target code volume;
the coded data provided as a result of the second coding process is stored and/or transmitted.
Thus, in the image coding system according to the second aspect of the present invention, in the first coding process the code volume control unit determines the scale factor used in the second coding process on the basis of the ratio between the actual code volume of coded data, obtained by using a predetermined initial scale factor, and a target code volume, the second coding process being executed on the basis of this scale factor for storing and/or transmitting optimum coded data with less deterioration.
According to a third aspect of the present invention, there is provided an image coding system comprising an orthogonal converting unit for orthogonally converting digital image data, a quantizing unit for quantizing orthogonal conversion coefficients provided from the orthogonal converting unit, a variable run length coding unit for variable run length coding the quantized orthogonal conversion coefficients from the quantizing unit, and a storing/transmitting unit for storing and/or transmitting the variable run length coded data from the variable run length coding unit, wherein:
the quantizing unit quantizes the orthogonal conversion coefficients by using quantizing coefficient data obtained by multiplying a basic quantization table by a scale factor;
the image coding system further comprises a code volume control unit for computing, in a first coding process, a scale factor used in a second coding process executed from an instant of time after the first coding process by computing the ratio between the actual code volume obtained with a predetermined initial scale factor, and a target code volume, and then dividing the scale factor used in the first coding process by n-th (n being a positive integer) power of the ratio between the actual and target code volumes;
the coded data provided as a result of the second coding is stored and/or transmitted; and
the code volume control unit computes the scale factor used in the second coding process by switching the exponent of the power according to the ratio between the actual and target code volumes.
Thus, in the image coding system according to the third aspect of the present invention, in the first coding system the code volume control unit computes the scale factor used in the second coding process by computing the ratio between the actual code volume, obtained by using a predetermined initial scale factor, and the target code volume and then dividing the scale factor used in the first coding process by n-th (n being a positive integer) power of the ratio between the actual and target code volumes. At this time, the code volume control unit computes the scale factor used in the second coding system by switching the exponent n of the power according to the ratio between the actual and target code volumes, the second coding process being executed according to this scale factor. It is thus possible to obtain more optimum coding and store and/or transmit coded data with less deterioration.
Other objects and features will be clarified from the following description with reference to attached drawings.